The present invention relates in general to oscilloscopes of the type which digitize input waveforms to produce sequences of data, and in particular to an oscilloscope which processes such input waveform data sequences according to user defined mathematical expressions and displays the results as waveforms.
Digital oscilloscopes produce waveform displays by digitizing input waveforms to produce representative data sequences and by using the stored data sequences to control waveform displays on a screen. The advent of high speed microprocessors has made it possible for digital oscilloscopes to do more than just display the digitized waveform data. For example, a microprocessor in a multiple channel digital oscilloscope may add two digitized input waveform data sequences to produce a third data sequence displayed as a third waveform representing the sum of the two input waveforms. This is helpful, for instance, in checking the response of a modulating circuit summing two input waveforms. Such an oscilloscope can digitize the modulating circuit input and output waveforms, sum the two input waveforms, and then display the result as an "expected" modulating circuit output waveform. When the actual modulating circuit output waveform is also displayed, the difference between the expected and actual modulating circuit output waveforms can be easily observed. Since any electronic circuit can be modeled by transfer functions relating its outputs to its inputs, and since a microprocessor can be programmed to combine sequences of stored waveform data according to any arbitrary function, a suitably programmed microprocessor-based digital oscilloscope could produce and display corresponding "expected" and "actual" output waveforms for a wide variety of electronic circuits.
However a microprocessor requires a certain amount of time to recalculate waveform data after an input change. This recalculation time can be relatively long compared to the time between screen updates and therefore an oscilloscope can require a noticeably long time to update the display of a calculated waveform in response to a change in input data. During the time required to completely recalculate a waveform data sequence, the oscilloscope screen may be updated several times and the displayed waveform after each screen update is based partly on data calculated before an input change and partly on data calculated after the input change. When a waveform data sequence is recalculated in sequential order, the change to the displayed waveform appears to "snake" across the screen as successive sections of the waveform are recomputed between each screen update. The slow waveform recalculation and display update and the snaking of the display update can be confusing and distracting to an operator monitoring a calculated waveform. This slow, confusing and distracting visual feedback provided by the oscilloscope can be particularly annoying when an operator attempts to adjust an input waveform or other parameter affecting the calculated waveform so as to produce a desired change in the calculated waveform.
What is needed and would be useful is a method and apparatus for recomputing and displaying the waveform data so that a change to the calculated waveform resulting from a change to the input data is quickly reflected in the display of the calculated waveform and so that distracting patterns in the waveform display update are eliminated.